/**   
 * Copyright © 2016 北京之洲科技有限责任公司. All rights reserved.
 * 
 * @Title: CrawlBase.java 
 * @Prject: carfactory
 * @Package: com.zizo.core 
 * @Description: TODO
 * @author: Alexis    特色股
 * @email heyan0227@outlook.com
 * @date: 2016年7月22日 下午1:04:48 
 * @version: V1.0   
 */   
package com.panny.newcar.core;

import org.apache.log4j.Logger;
import org.jsoup.nodes.Document;

/**
 * @ClassName: CrawlBase
 * @Description: TODO 爬虫接口
 * @author: Alexis
 * @date: 2016年7月22日 下午1:04:48
 */
public interface CrawlInterface {
	static final Logger logger = Logger.getLogger(CrawlInterface.class.getName());// 日志对象

	/**
	 * @Title: getPages
	 * @Description: TODO 得到网站的页数，根据该页数循环获得网址，此方法在getItems(String url)方法开始用到
	 * @param doc
	 *            为了避免第一页循环获取俩次，所有的网址默认都含有一个页面，即pages>=1;
	 * @param selectStr
	 *            Jsoup中筛选的选择器，eg：div.pages a
	 * @return
	 * @return: int 返回的页数
	 * @author: Alexis
	 */
	public int getPages(Document doc, String selectStr);

	/**
	 * @Title: getItems
	 * @Description: TODO 获得每一个条目，即每一个帖子的网址，传给crawlContent(String
	 *               url)方法，具体采用递归的思想，获得一个帖子网址即开始爬取当前网址的内容，爬取完成插入数据库数据后再继续获取下一个帖子的网址；
	 * @param url
	 *            帖子网址
	 * @return: void
	 * @author: Alexis
	 */
	public void getItems(String url);

	/**
	 * @Title: crawlContent
	 * @Description: TODO 此方法用于获取页面的内容，将数据提取后插入数据库。同时，得到镜像文件保存到本地
	 * @param url
	 * @return: void
	 * @author: Alexis
	 */
	public void crawlContent(String url);

}
